<!doctype html>
<title>Historical HTML APIs</title>
<script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script>
<div id=log></div>
<attachment></attachment>
<applet name=war align=left></applet>
<layer></layer>
<nolayer></nolayer>
<script>
test(() => {
  assert_array_equals(document.applets, []);
}, "document.applets is always empty");

[
  "attachment",
  "applet",
  "layer",
  "nolayer"
].forEach(name => {
  test(() => {
    const ap = document.getElementsByTagName(name)[0];
    assert_true(ap instanceof window.HTMLUnknownElement);
  }, `<${name}> is HTMLUnknownElement`);
});

test(() => {
  assert_equals(self.HTMLAppletElement, undefined);
}, "HTMLAppletElement is no more")

test(() => {
  assert_equals(document.all.war, undefined);
}, "document.all cannot find applet")

test(() => {
  assert_equals(document.war, undefined);
}, "document cannot find applet")

test(() => {
  assert_equals(self.war, undefined);
}, "window cannot find applet")

test(() => {
  assert_equals(self.getComputedStyle(document.getElementsByTagName("applet")[0], "").cssFloat, "none");
}, "applet is not styled")

// removed in https://github.com/whatwg/html/commit/e383ae23776362cafb2fb4bbba70c8c9080d4b0f
test(() => {
  assert_false("HTMLTableDataCellElement" in window);
}, "HTMLTableDataCellElement interface is removed")

test(() => {
  assert_false("HTMLTableHeaderCellElement" in window);
}, "HTMLTableHeaderCellElement interface is removed")

// removed in https://github.com/whatwg/html/commit/6e4bcf5630d08e03212ad4e1a3c78beecf2a92fa
test(() => {
  assert_false("initHashChangeEvent" in HashChangeEvent.prototype);
}, "HashChangeEvent's initHashChangeEvent method is removed")
</script>
